6 bool valid(const string s
){
8 if (s
== "") return true;
11 for (i
= 0; i
<s
.size(); ++i
){
17 if (p
== 0 && b
== 0){
24 return (valid(s
.substr(0, i
+1)) && valid(s
.substr(i
+1)));
28 char last
= s
[s
.size() - 1];
29 if ( (first
== '(' && last
== ')') || (first
== '[' && last
== ']') ){
30 return (valid(s
.substr(1, s
.size()-2)));
38 while (getchar() != '\n');
42 cout
<< (valid(s
)?"Yes":"No") << endl
;